Exploring a Method to Detect Behaviour-Preserving Evolution Using Graph Transformation
نویسندگان
چکیده
One of the problems of documenting software evolution appears with the extensive use of refactorings. This paper explores a method, based on graph transformation, to detect wether the evolution between two versions of a software system can be expressed by means of a sequence of refactoring operations. For this purpose we extend a graph representation format to use it for simple Java programs, and we show a sample implementation of the method using the AGG graph transformation tool. In case a refactoring sequence exists, our technique can help reveal the functional equivalence between the two versions of the system, at least, as far as refactorings can assure behaviour preservation.
منابع مشابه
Detecting Structural Refactoring Conflicts Using Critical Pair Analysis
Refactorings are program transformations that improve the software structure while preserving the external behaviour. In spite of this very useful property, refactorings can still give rise to structural conflicts when parallel evolutions to the same software are made by different developers. This paper explores this problem of structural evolution conflicts in a formal way by using graph trans...
متن کاملENTROPY OF DYNAMICAL SYSTEMS ON WEIGHTS OF A GRAPH
Let $G$ be a finite simple graph whose vertices and edges are weighted by two functions. In this paper we shall define and calculate entropy of a dynamical system on weights of the graph $G$, by using the weights of vertices and edges of $G$. We examine the conditions under which entropy of the dynamical system is zero, possitive or $+infty$. At the end it is shown that, for $rin [0,+infty]$, t...
متن کاملAn Effective Method for Utility Preserving Social Network Graph Anonymization Based on Mathematical Modeling
In recent years, privacy concerns about social network graph data publishing has increased due to the widespread use of such data for research purposes. This paper addresses the problem of identity disclosure risk of a node assuming that the adversary identifies one of its immediate neighbors in the published data. The related anonymity level of a graph is formulated and a mathematical model is...
متن کاملCompositional verification of model-level refactorings based on graph transformations
With the success of model-driven development as well as component-based and service-oriented systems, models of software architecture are key artifacts in the development process. To adapt to changing requirements and improve internal software quality such models have to evolve while preserving aspects of their behaviour. These behaviour preserving developments are known as refactorings. The ve...
متن کاملTransformational Design of Digital Systems Related to Graph Rewriting
Abstract. For high-level synthesis transformational design is a promising design methodology which combines correctness by construction and interactive design. In this design methodology the design steps are behaviour preserving transformations of one design representation into another. Because of the importance of visualisation of design-information several kinds of graphs are used as design r...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2007